计算机操作系统 (第四版汤小丹老师) 复习笔记完整版 您所在的位置:网站首页 深入理解计算机系统 第三版 pdf微盘 计算机操作系统 (第四版汤小丹老师) 复习笔记完整版

计算机操作系统 (第四版汤小丹老师) 复习笔记完整版

2023-10-05 09:52| 来源: 网络整理| 查看: 265

教材为西安电子科技大学 汤小丹老师 第四版 视频/图片来源:https://www.bilibili.com/video/BV1jv41147h8?p=1 操作系统系列目录: 第一章:操作系统引论 第二章:进程的描述与控制 第三章:处理机调度与死锁 第四章:存储器管理 第五章:虚拟存储器 第六章:输入输出系统 第七章:文件管理

文章目录 0.OS是什么?(os->operation system?)1.1操作系统目标和作用1.1.1 目标1.1.2 作用1.1.3 主要发展动力 1.2操作系统的发展过程1.2.1未配置操作系统的计算机系统(了解)1.2.2批处理系统1.2.3 多道批处理系统1.2.4 分时系统1.2.5 实时系统 1.3 操作系统的基本特性1.3.1并发1.3.2共享1.3.3虚拟1.3.4异步 1.4 操作系统的主要功能1.4.1处理机管理功能1.4.2存储器管理功能1.4.3设备管理功能1.4.4文件管理功能1.4.5操作系统与用户之间的接口1.4.6现代操作系统的新功能

0.OS是什么?(os->operation system?)

在这里插入图片描述

1.1操作系统目标和作用 1.1.1 目标

目前存在着多种类型的OS,不同类型的OS,其目标各有所侧重。通常在计算机硬件上配置的OS,其目标有以下几点:

方便性 便于理解计算机 通过接口方便地使用有效性 提高系统资源利用率 提高系统吞吐量可扩充性 OS应方便修改、增加新模块或功能,以适应计算机硬件、 体系结构以及应用发展的要求。开放性 OS应提供统一的开放环境,以实现应用的可移植性和互操作性 不同的设备能通过网络加以集成,并能正确、有效地协同工作 1.1.2 作用 提供用户与计算机硬件系统之间的接口 (1)命令方式:指由OS提供了一组联机命令 (语言), 用户可通过键盘输入有关命令,来直接操纵计算机系统。 (2)系统调用方式:OS提供了一组系统调用,用户可在自己的应用程序中通过相应的系统调用,来操纵计算机。 (3)图标–窗口方式:用户通过屏幕上的窗口和图标来操纵计算机系统和运行自己的程序。 (4)其他方式计算机系统资源的管理者 在一个计算机系统中,硬件和软件资源归纳起来可分为四类:处理器、存储器、 I/O设备以及文件(数据和程序)。相应地,OS的主要功能也正是针对这四类资源进行有效的管理。实现了对计算机资源的抽象 一台完全无软件的计算机系统(即裸机),即使其功能再强,也必定是难于使用的。比如打印,只要点击打印即可,不用管打印的资源管理

在这里插入图片描述

1.1.3 主要发展动力 不断提高计算机资源利用率方便用户(如接口)器件的不断更新换代 (如CPU芯片的发展)计算机体系结构的不断发展(如多处理机、网络)不断提出新的应用需求 (如多媒体、嵌入) 1.2操作系统的发展过程 1.2.1未配置操作系统的计算机系统(了解)

1.人工操作方式。这种人工操作方式有以下两方面的缺点: (1) 用户独占全机。 (2) CPU等待人工操作。

2.脱机输入/输出(Off–Line I/O)方式 这种脱机I/O方式的主要优点如下: (1) 减少了CPU的空闲时间。 (2) 提高I/O速度。 在这里插入图片描述

在这里插入图片描述

1.2.2批处理系统

1.单道批处理系统 单道批处理系统是最早出现的一种OS,严格地说,它只能算作是OS的前身,而并非是现在人们所理解的OS。尽管如此,该系统比起人工操作方式的系统已有很大进步。

批处理是指用户将一批作业提交给操作系统后就不再干预,由操作系统控制它们自动运行。 单道批处理系统在内存中只保持一道作业的批处理系统。

特征: (1) 自动性 (2) 顺序性 (3) 单道性

缺点: 系统资源利用不充分。

1.2.3 多道批处理系统

多道程序设计:多个作业存放在主存中,使它们同时处于运行状态,这些作业共享处理机时间和外围设备等资源

好处:

提高CPU的利用率。可提高内存和I/O设备利用率。增加系统吞吐量。

缺点:

周转时间变长无交互能力(比如有一个在打印,另一个打印只能等待)

多道批处理系统是一种十分有效,但又非常复杂的系统,为使系统中多道程序间能协调地运行,系统必须解决下述一系列问题:

(1) 处理机争用问题。既要能满足各道程序运行的需要,又要能提高处理机的利用率。  (2) 内存分配和保护问题。系统应能为每道程序分配必要的内存空间,使它们“各得其所”,且不会因某道程序出现异常情况而破坏其它程序。  (3)  I/O设备分配问题。系统应采取适当的策略来分配系统中的I/O设备,以达到既能方便用户对设备的使用,又能提高设备利用率的目的 (4) 文件的组织和管理问题。系统应能有效地组织存放在系统中的大量的程序和数据,使它们既便于用户使用,又能保证数据的安全性。 (5) 作业管理问题。系统中存在着各种作业(应用程序),系统应能对系统中所有的作业进行合理的组织,以满足这些作业用户的不同要求。 (6) 用户与系统的接口问题。为使用户能方便的使用操作系统,OS还应提供用户与OS之间的接口。

1.2.4 分时系统

在操作系统中加入了分时技术:即将处理机的运行时间分为时间片,将时间片轮流分配给各联机作业使用。 在这里插入图片描述

用户的需求表现: 人—机交互。 共享主机。 便于用户上机。

特征 1.多路性 2.独立性 3.及时性 4.交互性

1.2.5 实时系统

所谓“实时”,是表示“及时”,而实时系统(RealTime System)是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。

如: 1、实时控制系统 要求计算机能尽快处理测量系统测得的数据,以尽快实施响应控制。如:工业控制;导弹发射;飞机飞行 2、实时信息系统 要求计算机能对终端设备发来的服务请求及时予以正确的回答。如:订票系统;股票交易系统

按任务执行时是否呈现周期性来划分

周期性实时任务。非周期性实时任务。

根据对截止时间的要求来划分

硬实时任务(hard real-time task),系统必须满足任务对截止时间的要求,否则可能出现难以预测的结果。软实时任务(Soft real-time task),它也联系着一个截止时间,但并不严格,若偶尔错过了任务的截止时间,对系统产生的影响也不会太大。

特征: 多路性 独立性 及时性 交互性 可靠性

1.3 操作系统的基本特性 1.3.1并发

区别并行和并发

并行是指这一个时刻上面有着多个事件在执行,是一个瞬间的状态。   并发是指在某一段时间间隔以内有着多个事件同时进行。 在多道程序环境下,并发性是指在一段时间内,宏观上有多个程序在同时运行,但在单处理机系统中,每一时刻却仅能有一道程序执行,故微观上这些程序只能是分时地交替执行。

引入进程 程序为静态的,进程为程序的执行 引入线程 进程的更小的可执行单位,一个进程可以包含若干个线程

1.3.2共享

在这里插入图片描述

在操作系统环境下,所谓共享是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用。由于资源属性的不同,进程对资源共享的方式也不同,目前主要有以下两种资源共享方式:

互斥共享方式

系统中的某些资源,如打印机、磁带机,虽然它们可以提供给多个进程(线程)使用,但为使所打印或记录的结果不致造成混淆,应规定在一段时间内只允许一个进程(线程)访问该资源,我们把这种资源共享方式称为互斥式共享。 如a老师打印a试卷,b老师打印b试卷,他们共享打印机这个设备     临界资源或独占资源:一段时间内只允许一个进程访问的资源。计算机系统中的大多数物理设备,以及某些软件中所用的栈、变量和表格,都属于临界资源,它们要求被互斥地共享。

同时访问方式

允许在一段时间内由多个进程 “同时”对它们进行访问。这里所谓的“同时”往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问。 并发和共享是多用户(多任务)OS的两个最基本的特征。它们又是互为存在的条件。

1.3.3虚拟

是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。物理实体(前者)是实的, 即实际存在的;而后者是虚的,是用户感觉上的东西。相应地,用于实现虚拟的技术,称为虚拟技术。在OS中利用了多种虚拟技术,分别用来实现虚拟处理机、虚拟内存、 虚拟外部设备和虚拟信道等。

时分复用技术(即分时使用方式)

⑴虚拟处理机技术:在虚拟处理机技术中,是通过多道程序设计技术,让多道程序并发执行的方法,来分时使用一台处理机的。 ⑵虚拟设备技术:将一台物理I/O设备虚拟为多台逻辑上的I/O设备,并允许每 个用户占用一台逻辑上的I/O设备,这样便可使原来仅允许在 一段时间内由一个用户访问的设备(即临界资源),变为在一 段时间内允许多个用户同时访问的共享设备。 在操作系统中,虚拟的实现主要是通过分时使用的方法。显然,如果 n 是某物理设备所对应的虚拟的逻辑设备数,则虚拟设备的平均速度必然是物理设备速度的1 / n

空分复用技术

⑴虚拟磁盘技术:将硬盘划分为若干个卷,机器上便会有若 干个虚拟盘。 ⑵虚拟存储器技术:将一台机器的物理存储器变为虚拟存储器,以便从逻辑上来扩充存储器的容量。

1.3.4异步

由于资源等因素的限制,使进程的执行通常都不是“一气呵成”, 而是以“停停走走”的方式运行。

内存中的每个进程在何时能获得处理机运行,何时又因提出某种资源请求而暂停,以及进程以怎样的速度向前推进,每道程序总共需多少时间才能完成,等等,都是不可预知的。 由于各用户程序性能的不同,比如,有的侧重于计算而较少需要 I/O;而又有的程序其计算少而I/O多,这样,很可能是先进入内存的作业后完成;而后进入内存的作业先完成。或者说,进程是以人们不可预知的速度向前推进,此即进程的异步性。

尽管如此,但只要运行环境相同,作业经多次运行,都会获得完全相同的结果。因此,异步运行方式是允许的,是操作系统的一个重要特征。

1.4 操作系统的主要功能 1.4.1处理机管理功能 进程控制

在传统的多道程序环境下,要使作业运行,必须先为它创建一个或几个进程,并为之分配必要的资源。当进程运行结束时,立即撤消该进程,以便能及时回收该进程所占用的各类资源。进程控制的主要功能是为作业创建进程、撤消已结束的进程,以及控制进程在运行过程中的状态转换。

进程同步

为使多个进程能有条不紊地运行,系统中必须设置进程同步机制。进程同步的主要任务是为多个进程(含线程)的运行进行协调。有两种协调方式: ① 进程互斥方式, 这是指诸进程(线程)在对临界资源进行访问时, 应采用互斥方式; ② 进程同步方式,指在相互合作去完成共同任务的诸进程(线程)间,由同步机构对它们的执行次序加以协调。

进程通信

在多道程序环境下,为了加速应用程序的运行,应在系统中建立多个进程,并且再为一个进程建立若干个线程,由这些进程(线程)相互合作去完成一个共同的任务。而在这些进程(线程)之间,又往往需要交换信息。 例如,有三个相互合作的进程, 它们是输入进程、计算进程和打印进程。输入进程负责将所输入的数据传送给计算进程;计算进程利用输入数据进行计算, 并把计算结果传送给打印进程;最后,由打印进程把计算结果打印出来。进程通信的任务就是用来实现在相互合作的进程之间的信息交换。

调度

在后备队列上等待的每个作业,通常都要经过调度才能执行。在传统的操作系统中,包括作业调度和进程调度两步。   ① 作业调度的基本任务,是从后备队列中按照一定的算法,选择出若干个作业,为它们分配其必需的资源(首先是分配内存)。 在将它们调入内存后,便分别为它们建立进程,使它们都成为可能获得处理机的就绪进程,并按照一定的算法将它们插入就绪队列。 ② 而进程调度的任务,则是从进程的就绪队列中选出一新进程,把处理机分配给它,并为它设置运行现场, 使进程投入执行。

1.4.2存储器管理功能 内存分配

OS在实现内存分配时,可采取静态和动态两种方式。 在静态分配方式中,每个作业的内存空间是在作业装入时确定的;在作业装入后的整个运行期间, 不允许该作业再申请新的内存空间,也不允许作业在内存中“移动”; 在动态分配方式中,每个作业所要求的基本内存空间, 也是在装入时确定的,但允许作业在运行过程中,继续申请新的附加内存空间,以适应程序和数据的动态增涨,也允许作业在内存中“移动”。

内存保护

内存保护的主要任务,是确保每道用户程序都只在自己的内存空间内运行,彼此互不干扰。 为了确保每道程序都只在自己的内存区中运行,必须设置内存保护机制。一种比较简单的内存保护机制,是设置两个界限寄存器,分别用于存放正在执行程序的上界和下界。系统须对每条指令所要访问的地址进行检查,如果发生越界,便发出越界中断请求,以停止该程序的执行。

地址映射

一个应用程序(源程序)经编译后,通常会形成若干个目标程序;这些目标程序再经过链接便形成了可装入程序。这些程序的地址都是从“0”开始的,程序中的其它地址都是相对于起始地址计算的; 由这些地址所形成的地址范围称为“地址空间”。“其中的地址称为“逻辑地址”或“相对地址”。此外,由内存中的一系列单元所限定的地址范围称为“内存空间”, 其中的地址称为“物理地址”。   在多道程序环境下,每道程序不可能都从“0”地址开始装入(内存), 这就致使地址空间内的逻辑地址和内存空间中的物理地址不相一致。使程序能正确运行,存储器管理必须提供地址映射功能,以将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址。该功能应在硬件的支持下完成。

内存扩充

存储器管理中的内存扩充任务,并非是去扩大物理内存的容量,而是借助于虚拟存储技术,从逻辑上去扩充内存容量,使用户所感觉到的内存容量比实际内存容量大得多; 或者是让更多的用户程序能并发运行。这样,既满足了用户的需要,改善了系统的性能,又基本上不增加硬件投资。 为了能在逻辑上扩充内存,系统必须具有内存扩充机制, 用于实现下述各功能: (1) 请求调入功能。 (2) 置换功能。

1.4.3设备管理功能

设备管理用于管理计算机系统中所有的外围设备, 而设备管理的主要任务是,完成用户进程提出的I/O请求; 为用户进程分配其所需的I/O设备;提高CPU和I/O设备的利用率;提高I/O速度;方便用户使用I/O设备。为实现上述任务,设备管理应具有缓冲管理、设备分配和设备处理,以及虚拟设备等功能。

缓冲管理

CPU运行的高速性和I/O低速性间的矛盾自计算机诞生时起便已存在。 而随着CPU速度迅速、大幅度的提高,使得此矛盾更为突出,严重降低了CPU的利用率。如果在I/O设备和CPU之间引入缓冲,则可有效地缓和CPU和I/O设备速度不匹配的矛盾,提高CPU的利用率,进而提高系统吞吐量。 因此,在现代计算机系统中, 都毫无例外地在内存中设置了缓冲区,而且还可通过增加缓冲区容量的方法,来改善系统的性能。 最常见的缓冲区机制有单缓冲机制、能实现双向同时传送数据的双缓冲机制,以及能供多个设备同时使用的公用缓冲池机制。

设备分配

设备分配的基本任务,是根据用户进程的I/O请求、系统的现有资源情况以及按照某种设备分配策略,为之分配其所需的设备。如果在I/O设备和CPU之间,还存在着设备控制器和I/O通道时,还须为分配出去的设备分配相应的控制器和通道。 为了实现设备分配,系统中应设置设备控制表、控制器控制表等数据结构,用于记录设备及控制器的标识符和状态。据这些表格可以了解指定设备当前是否可用,是否忙碌,以供进行设备分配时参考。在进行设备分配时,应针对不同的设备类型而采用不同的设备分配方式。对于独占设备(临界资源)的分配,还应考虑到该设备被分配出去后,系统是否安全。 设备使用完后,还应立即由系统回收。

设备处理

设备处理程序又称为设备驱动程序。其基本任务是用于实现CPU和设备控制器之间的通信,即由CPU向设备控制器发出I/O命令,要求它完成指定的I/O操作;反之由CPU接收从控制器发来的中断请求,并给予迅速的响应和相应的处理。 处理过程是:设备处理程序首先检查I/O请求的合法性,了解设备状态是否是空闲的,了解有关的传递参数及设置设备的工作方式。然后,便向设备控制器发出I/O命令,启动I/O设备去完成指定的I/O操作。设备驱动程序还应能及时响应由控制器发来的中断请求,并根据该中断请求的类型,调用相应的中断处理程序进行处理。对于设置了通道的计算机系统, 设备处理程序还应能根据用户的I/O请求,自动地构成通道程序。

1.4.4文件管理功能 文件存储空间的管理

由文件系统对诸多文件及文件的存储空间,实施统一的管理。其主要任务是为每个文件分配必要的外存空间,提高外存的利用率,并能有助于提高文件系统的运行速度。 为此,系统应设置相应的数据结构,用于记录文件存储空间的使用情况,以供分配存储空间时参考;系统还应具有对存储空间进行分配和回收的功能。为了提高存储空间的利用率,对存储空间的分配,通常是采用离散分配方式,以减少外存零头,并以盘块为基本分配单位。盘块的大小通常为512 B~8 KB。

目录管理

为了使用户能方便地在外存上找到自己所需的文件,通常由系统为每个文件建立一个目录项。目录项包括文件名、文件属性、文件在磁盘上的物理位置等。由若干个目录项又可构成一个目录文件。目录管理的主要任务,是为每个文件建立其目录项,并对众多的目录项加以有效的组织,以实现方便的按名存取。即用户只须提供文件名,即可对该文件进行存取。其次,目录管理还应能实现文件共享,这样,只须在外存上保留一份该共享文件的副本。此外,还应能提供快速的目录查询手段,以提高对文件的检索速度。

文件的读写管理和保护

(1) 文件的读/写管理。该功能是根据用户的请求,从外存中读取数据;或将数据写入外存。在进行文件读(写)时,系统先根据用户给出的文件名,去检索文件目录,从中获得文件在外存中的位置。然后,利用文件读(写)指针,对文件进行读(写)。一旦读(写)完成,便修改读(写)指针,为下一次读(写)做好准备。由于读和写操作不会同时进行,故可合用一个读/写指针。   (2) 文件保护。① 防止未经核准的用户存取文件; ② 防止冒名顶替存取文件; ③ 防止以不正确的方式使用文件。

1.4.5操作系统与用户之间的接口 用户接口程序接口 1.4.6现代操作系统的新功能 系统安全网络的功能和服务支持多媒体


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有